Creates a new QuantumController to extract variables from a specific configuration domain.

A configuration domain is an abstract concept that allows for a single application to model different sources of configuration variables and values. For example these configuration domains can represent application execution environments like Development, Testing and Production; or it can be configurations for different application user roles like Administrators, Standard Users and Read Only Users.

Namespace: Keystone.Quantum
Assembly: Keystone.Quantum (in Keystone.Quantum.dll)

public static QuantumController CreateWith<TPersistenceStrategy, TEncryptionStrategy>( 
string configurationDomainInspectionSequence = "Development, Testing, Staging, Production, *", 
bool monitorConfigurationChanges = false 

where TPersistenceStrategy : PersistenceStrategy, new() 
where TEncryptionStrategy : EncryptionStrategy, new(), >, CreateWith(new, new, configurationDomainInspectionSequence, monitorConfigurationChanges)
This language is not supported or no code example is available.

Type Parameters

TPersistenceStrategy

The persistence strategy type that will receive configuration variable reading requests. Since this type is instantiated inside this method, it must have a public parameterless constructor.

TEncryptionStrategy

The encryption strategy type that will receive configuration variable decryption requests. Since this type is instantiated inside this method, it must have a public parameterless constructor.

Parameters

configurationDomainInspectionSequence

Type: string

Optional parameter that defines the configuration domain inspection sequence.

monitorConfigurationChanges

Type: bool

Optional parameter that defines if Quantum should monitor configuration changes at runtime if possible.

Return Value

A new QuantumController instance.
Exception type Condition

ArgumentException

If the configurationDomainsInspectionSequence is null reference (Nothing in Visual Basic) or empty

Windows, Windows Server, OS X, macOS, iOS, tvOS, Android, Linux, AWS, Azure

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 4.6

Others

Xamarin, Mono